home *** CD-ROM | disk | FTP | other *** search
- #include <stdio.h>
- #include <audio/audiolib.h>
- #include <audio/soundlib.h>
-
- #define USAGE "usage: ausay [ -s server ] [-v vol] [-d directory] message\n"
- #ifndef DEFAULT_DIR
- #define DEFAULT_DIR "/usr/local/lib/phonemes"
- #endif
- #define DEFAULT_VOL 100
-
- static void usage();
-
- AuServer *aud;
-
- #define OPT_STR "s:v:d:"
-
- main(argc, argv)
- int argc;
- char **argv;
- {
- int fd, ch;
- int vol = DEFAULT_VOL;
- char *dir = (char *) 0;
- char cp[1024];
- char *server = NULL;
- extern int optind;
- extern char *optarg;
-
- while ((ch = getopt (argc, argv, OPT_STR)) != EOF)
- {
- switch (ch)
- {
- case 'v':
- vol = atoi(optarg);
- break;
- case 'd':
- dir = optarg;
- break;
- case 's':
- server = optarg;
- break;
- case '?':
- default:
- usage();
- }
- }
- argc -= optind;
- argv += optind;
-
- if (!argc)
- usage();
-
- if (dir == (char *) 0)
- dir = DEFAULT_DIR;
-
- if ((aud = AuOpenServer(server, 0, NULL, 0, NULL, NULL)) == (AuServer *) 0)
- {
- fatal(0, "Cant open server!\n");
- exit(1);
- }
-
- if (speak_load_samples(dir))
- exit(1);
-
- if (vol < 0)
- vol = 0;
-
- speak_volume(vol);
-
- while (argc--)
- {
- speak_string(*argv++);
- }
-
- AuFlush(aud);
- AuCloseServer(aud);
-
- }
-
- static void
- usage()
- {
- fprintf(stderr, USAGE);
- exit(1);
- }
-